System and process for closest in path vehicle following using surrounding vehicles motion flow

ABSTRACT

A system for closest in path vehicle following using surrounding vehicles motion flow is provided and includes a sensor device of a host vehicle generating data related to vehicles upon a drivable surface. The system further includes a navigation controller including a computerized processor operable to monitor the data from the sensor device, define a portion of the plurality of vehicles as a swarm of vehicles, identify one of the plurality of vehicles as a closest in path vehicle to be followed, evaluate the data to determine whether the closest in path vehicle to be followed is exhibiting good behavior in relation to the swarm of vehicles, and, when the closest in path vehicle to be followed is exhibiting the good behavior, generate a breadcrumbing navigation path based upon the data. The system further includes a vehicle controller controlling the host vehicle based upon the breadcrumbing navigation path.

INTRODUCTION

The disclosure generally relates to a system and process for closest inpath vehicle following using surrounding vehicles motion flow for anautonomous or semi-autonomous vehicle.

Navigation systems and methods for autonomous and semi-autonomousvehicles utilize computerized algorithms to determine a navigationalpath for the vehicle being controlled. Digital maps and sensor inputsare useful to set the navigational path for the vehicle. Sensor inputsmay include image recognition of lane markers and street features.Sensor inputs may further include image, radar, light detection andranging (LiDAR), or other similar sensor recognition types to monitorlocations of other vehicles relative to the vehicle being controlled,for example, to prevent the vehicle being controlled from getting tooclose to another vehicle in traffic.

SUMMARY

A system for closest in path vehicle following using surroundingvehicles motion flow is provided. The system includes a sensor device ofa host vehicle generating data related to a plurality of vehicles upon adrivable surface in front of the host vehicle. The system furtherincludes a navigation controller including a computerized processoroperable to monitor the data from the sensor device, define a portion ofthe plurality of vehicles as a swarm of vehicles, identify one of theplurality of vehicles as a closest in path vehicle to be followed,evaluate the data to determine whether the closest in path vehicle to befollowed is exhibiting good behavior in relation to the swarm ofvehicles, and, when the closest in path vehicle to be followed isexhibiting the good behavior, generate a breadcrumbing navigation pathbased upon the data. The system further includes a vehicle controllercontrolling the host vehicle based upon the breadcrumbing navigationpath.

In some embodiments, evaluating the data includes comparing a heading ofthe closest in path vehicle to be followed to a heading of the swarm ofvehicles to determine a heading error of the closest in path vehicle tobe followed, comparing a curvature of the closest in path vehicle to befollowed to a curvature of the swarm of vehicles to determine acurvature error of the closest in path vehicle to be followed, anddetermining the closest in path vehicle to be exhibiting the goodbehavior based upon the heading error and the curvature error.

In some embodiments, the system further includes the computerizedprocessor being further operable to determine a speed of the closest inpath vehicle to be followed, determine an average speed of the swarm ofvehicles, and determine a relative position of the closest in pathvehicle to be followed to the swarm of vehicles. The system furtherincludes evaluating the data to determine whether the closest in pathvehicle to be followed is exhibiting the good behavior in relation tothe swarm of vehicles when a speed difference between the speed of theclosest in path vehicle to be followed and the average speed of theswarm of vehicles is less than a threshold speed difference and when therelative position of the closest in path vehicle to be followed to theswarm of vehicles is closer than a threshold distance.

In some embodiments, the computerized processor is further operable towarn a driver of the host vehicle when the closest in path vehicle to befollowed is not exhibiting the good behavior.

In some embodiments, generating the breadcrumbing navigation path basedupon the data includes weighting the closest in path vehicle as ahigh-quality candidate to be followed based upon the good behavior.

In some embodiments, the sensor device includes one of a camera device,a radar device, a LiDAR device, or an ultrasonic device.

In some embodiments, the vehicle controller further controls a distancefrom the closest in path vehicle to be followed based upon the closestin path vehicle to be followed exhibiting the good behavior.

In some embodiments, the vehicle controller further controls autonomousbraking based upon the closest in path vehicle to be followed exhibitingthe good behavior.

In some embodiments, defining the portion of the plurality of vehiclesas the swarm of vehicles includes determining a speed of a first vehicleof the plurality of vehicles, determining a speed of a second vehicle ofthe plurality of vehicles, determining a relative position of the firstvehicle to the second vehicle, and defining the first vehicle and thesecond vehicle as the swarm of vehicles when a speed difference betweenthe speed of the first vehicle and the speed of the second vehicle isless than a threshold speed difference and when the relative position ofthe first vehicle to the second vehicle is closer than a thresholddistance.

In some embodiments, defining the portion of the plurality of vehiclesas the swarm of vehicles further includes determining a speed of a thirdvehicle of the plurality of vehicles, determining an average speed ofthe swarm of vehicles, determining a relative position of the thirdvehicle to the swarm of vehicles. Defining the portion of the pluralityof vehicles as the swarm of vehicles further includes defining the swarmof vehicles to include the third vehicle when a speed difference betweenthe speed of the third vehicle and the average speed of the swarm ofvehicles is less than the threshold speed difference and when therelative position of the third vehicle to the swarm of vehicles iscloser than the threshold distance.

According to one alternative embodiment, a system for closest in pathvehicle following using surrounding vehicles motion flow is provided.The system includes a sensor device of a host vehicle generating datarelated to a plurality of vehicles upon a drivable surface in front ofthe host vehicle. The system further includes a navigation controllerincluding a computerized processor operable to monitor the data from thesensor device, define a portion of the plurality of vehicles as a swarmof vehicles, identify one of the plurality of vehicles as a closest inpath vehicle to be followed, evaluate the data to determine whether theclosest in path vehicle to be followed is exhibiting good behavior inrelation to the swarm of vehicles, and, when the closest in path vehicleto be followed is exhibiting the good behavior, generate a breadcrumbingnavigation path based upon the data. The generating includes weightingthe closest in path vehicle as a high-quality candidate to be followedbased upon the good behavior. The evaluating includes comparing aheading of the closest in path vehicle to be followed to a heading ofthe swarm of vehicles to determine a heading error of the closest inpath vehicle to be followed, comparing a curvature of the closest inpath vehicle to be followed to a curvature of the swarm of vehicles todetermine a curvature error of the closest in path vehicle to befollowed, and determining the closest in path vehicle to be exhibitingthe good behavior based upon the heading error and the curvature error.The system further includes a vehicle controller controlling the hostvehicle based upon the breadcrumbing navigation path.

In some embodiments, the computerized processor is further operable todetermine a speed of the closest in path vehicle to be followed,determine an average speed of the swarm of vehicles, and determine arelative position of the closest in path vehicle to be followed to theswarm of vehicles. The computerized processor is further operable toevaluate the data to determine whether the closest in path vehicle to befollowed is exhibiting the good behavior in relation to the swarm ofvehicles when a speed difference between the speed of the closest inpath vehicle to be followed and the average speed of the swarm ofvehicles is less than a threshold speed difference and when the relativeposition of the closest in path vehicle to be followed to the swarm ofvehicles is closer than a threshold distance.

In some embodiments, the computerized processor is further operable towarn a driver of the host vehicle when the closest in path vehicle to befollowed is not exhibiting the good behavior.

In some embodiments, the sensor device includes one of a camera device,a radar device, a LiDAR device, or an ultrasonic device.

In some embodiments, the vehicle controller further controls a distancefrom the closest in path vehicle to be followed based upon the closestin path vehicle to be followed exhibiting the good behavior.

In some embodiments, the vehicle controller further controls autonomousbraking based upon the closest in path vehicle to be followed exhibitingthe good behavior.

According to one alternative embodiment, a process for closest in pathvehicle following using surrounding vehicles motion flow is provided.The process includes, within a computerized processor of a host vehicle,monitoring the data from a sensor device collecting data related to aplurality of vehicles upon a drivable surface in front of the hostvehicle, defining a portion of the plurality of vehicles as a swarm ofvehicles, identifying one of the plurality of vehicles as a closest inpath vehicle to be followed, and evaluating the data to determinewhether the closest in path vehicle to be followed is exhibiting goodbehavior in relation to the swarm of vehicles. The process furtherincludes, when the closest in path vehicle to be followed is exhibitingthe good behavior, generating a breadcrumbing navigation path based uponthe data and controlling the host vehicle based upon the breadcrumbingnavigation path.

In some embodiments, evaluating the data includes comparing a heading ofthe closest in path vehicle to be followed to a heading of the swarm ofvehicles to determine a heading error of the closest in path vehicle tobe followed, comparing a curvature of the closest in path vehicle to befollowed to a curvature of the swarm of vehicles to determine acurvature error of the closest in path vehicle to be followed, anddetermining the closest in path vehicle to be exhibiting the goodbehavior based upon the heading error and the curvature error.

In some embodiments, the process further includes, within thecomputerized processor, determining a speed of the closest in pathvehicle to be followed, determining an average speed of the swarm ofvehicles and determining a relative position of the closest in pathvehicle to be followed to the swarm of vehicles The process furtherincludes evaluating the data to determine whether the closest in pathvehicle to be followed is exhibiting the good behavior in relation tothe swarm of vehicles when a speed difference between the speed of theclosest in path vehicle to be followed and the average speed of theswarm of vehicles is less than a threshold speed difference and when therelative position of the closest in path vehicle to be followed to theswarm of vehicles is closer than a threshold distance.

The above features and advantages and other features and advantages ofthe present disclosure are readily apparent from the following detaileddescription of the best modes for carrying out the disclosure when takenin connection with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates terms which may be useful in defining a process toquantify CIPV behavior, in accordance with the present disclosure;

FIG. 2 schematically illustrates exemplary control architecture usefulto operate the disclosed process and system, in accordance with thepresent disclosure;

FIG. 3 schematically illustrates an exemplary data communication systemwithin a vehicle being controlled, in accordance with the presentdisclosure;

FIG. 4 illustrates an exemplary vehicle being controlled by thedisclosed process and system, including devices and modules useful tocertifying a CIPV target as high-quality, in accordance with the presentdisclosure;

FIG. 5 schematically illustrates an exemplary computerized navigationcontroller, in accordance with the present disclosure;

FIG. 6 graphically illustrates exemplary positional data collectedregarding a swarm of vehicles including a CIPV target through a timespan, in accordance with the present disclosure; and

FIG. 7 is a flowchart illustrating an exemplary process 600 to evaluatea CIPV target and determine whether the CIPV target is exhibiting goodCIPV behavior or bad CIPV behavior, in accordance with the presentdisclosure.

DETAILED DESCRIPTION

A process and system for closest vehicle in path following for anautonomous or semi-autonomous host vehicle is provided including areal-time determination whether a closest vehicle in a current path forthe vehicle being controlled is exhibiting good behavior worthy of beingfollowed or bad behavior indicating that the host vehicle is not to befollowed by the closest in path vehicle.

Breadcrumbing navigation by following the closest vehicle in path orClosest In Path Vehicle (CIPV) may be used to deal with intermittentlane marking quality in lane following control. Breadcrumbing refers toutilizing locations of other vehicles in the path of the vehicle beingcontrolled to set a path for the vehicle being controlled. Breadcrumbingnavigation strategies may not differentiate good CIPV behavior versusbad CIPV behavior. A real-time process and system are provided thatanalyzes and determines a quality of CIPV behavior in light of behaviorof other vehicles close to the CIPV. A close grouping of vehicles may bedescribed as a swarm of vehicles. Individuals may drive poorly orexhibit bad behavior. However, a swarm including a plurality of driversand exhibiting consistent behavior in relation to each other is morelikely to represent acceptable driving behavior. A swarm of vehiclestraveling down a roadway at consistent speeds and each travelingconsistently within its own lane may collectively be useful to set astandard for good vehicle behavior. By comparing behavior of a CIPV tobehavior of a swarm of vehicles or a swarm of vehicles to which the CIPVbelongs, the behavior of the CIPV may be analyzed and graded.

By examining the CIPV driver's behavior and selectively employinglocation and trajectory data from the CIPV for breadcrumbing pathplanning, the disclosed system may increase feature availability andsafety. The breadcrumbing data collected and certified to behigh-quality may be used individually or may be used to reinforce andrationalize camera inputs for lane following. The disclosed system mayprovide better camera/lane interpretation, vision range, and qualitywithout new hardware. In one embodiment, the disclosed process andsystem compares CIPV states including but not limited to a heading errorand a curvature error to data related to the swarm of vehicles tocertify and selectively utilize high-quality CIPV data. Heading errordescribes an error between an actual heading of the CIPV from a nominalor desired heading based upon behavior of the swarm. Curvature errordescribes an error between a curvature navigated by the CIPV as comparedto a nominal or desired curvature based upon behavior of the swarm. Bymeasuring or estimating heading error and curvature error of the CIPV inrelation to the swarm, the behavior of the CIPV as a candidate to befollowed may be evaluated. As described herein, behavior of a CIPV maybe classified as good behavior as compared to the swarm or bad behavioras compared to the swarm. Other descriptors may be substituted for goodor bad, for example, by terms such as swarm compliant behavior, swarmnon-compliant behavior, threshold swarm stable behavior, and swarmunstable behavior.

An exemplary algorithm for determining or quantifying a behavior of aCIPV as a candidate to be followed is provided as Equation 1.f(X _(c))=∫_(t-Δt) ^(t)(α₁ |e _(ψ)|+α₂ |e _(ρ)|)dt+α ₃∫_(ω=0 Hz)^(5 Hz)FFT(

e _(v)

_(t) ,

e _(ψ)

_(t) ,

e _(ρ)

_(t))² dω  [1]Equations 2 and 3 describe terms in Equation 1.e _(ψ)=ψ_(cipv)−ψ_(swarm)  [2]e _(ρ)=ρ_(cipv)−(ρ_(swarm))  [3]e_(ψ) describes a heading error for the CIPV. e_(ρ) describes acurvature error for the CIPV. Terms α₁, α₂, and α₃ describe weightingfactors for quantification. The term Δt describes a length of movingtime window. The operation FFT describes a Fast Fourier Transformalgorithm applied within Equation 1. The term ω describes a frequency oflow energy band. Equations 4 and 5 further describe terms of Equation 1,describing the vector over window the past Δt₂ seconds since t_(now).

e _(ψ)

t _(now) ={e _(ψ)(t):∀t∈[t _(now) −Δt ₂ ,t _(now)]}  [4]

e _(ρ)

t _(now) ={e _(ρ)(t):∀t∈[t _(now) −Δt ₂ ,t _(now)]}  [5]Equation 1 is provided as an exemplary algorithm for evaluating whethera target CIPV exhibits good CIPV behavior or bad CIPV behavior. A numberof alternative algorithms are envisioned, and the disclosure is notintended to be limited to the examples provided herein.

FIG. 1 illustrates terms which may be useful in defining a process toquantify CIPV 30 behavior. A portion of the terms of Equation 1 aredescribed in FIG. 1. Host vehicle 20 being controlled is illustratedupon a road surface 10. The CIPV 30 or the CIPV target is illustratedupon the road surface 10. Additionally, vehicle 50 and vehicle 60 areillustrated upon the road surface 10. The CIPV 30, the vehicle 50, andthe vehicle 60 are close to each other and are traveling at a relativelysimilar speed such that swarm 70 including the CIPV 30, the vehicle 50,and the vehicle 60 may be defined.

Various terms may be defined describing the CIPV 30 and its motion inrelation to the road surface 10 and the swarm 70. Term 32 describese_(w) or a heading error for the CIPV 30. Term 34 describes e_(p) or acurvature error for the CIPV 30. Term 52 describes a heading error forthe vehicle 50. Term 54 describes a curvature error for the vehicle 50.Term 62 describes a heading error for the vehicle 60. Term 64 describesa curvature error for the vehicle 60. Term 72 describes an averageheading error for the swarm 70. Term 74 describes an average curvatureerror for the swarm 70.

Controlling the host vehicle based upon a breadcrumbing navigation pathmay include a number of alternative embodiments. In one exemplaryembodiment, the host vehicle may include equipment to determine a lanegeometry on the drivable surface. The vehicle may include a controllerto fuse the lane geometry with the breadcrumbing navigation path tocreate a fused navigation path. A trajectory of the host vehicle maythen be controlled based upon the fused navigation path.

FIG. 2 schematically illustrates exemplary control architecture usefulto operate the disclosed process and system. Control architecture 100 isillustrated including camera device 110, digital map database 120, datafusion module 130, mission planning module 140, longitudinal controller150, lateral controller 160, and electronic powersteering/acceleration/braking module 170. Camera device 110 captures aseries of images related to an environment around and in the path of thevehicle being controlled, including but not limited to images of theroad surface, images of lane markers, images of potential obstacles nearthe vehicle, images of vehicles around the vehicle being controlled, andother images of relevant information to controlling a vehicle. Digitalmap database 120 includes data regarding an area around the vehiclebeing controlled including historically documented road geometry,synthesized data such as vehicle to vehicle or infrastructure to vehicledata regarding road geometry, and other information that may bemonitored and stored about a particular area upon which the vehicle maytravel. Data fusion module 130 includes CIPV module 132, CIPV behavioranalysis module 134, and breadcrumbing navigation module 136. CIPVmodule 132 gathers information regarding a CIPV and a swarm of vehiclesand generates data from the information including exemplary values oftrajectory the CIPV within a lane of travel and in relation to theswarm. CIPV behavior analysis module 134 receives the generated datafrom CIPV module 132 and analyzes the data to determine whether CIPV isexhibiting good CIPV behavior or bad CIPV behavior. If CIPV behavioranalysis module 134 determines that the CIPV is exhibiting good CIPVbehavior, breadcrumbing navigation module 136 utilizes data from CIPVmodule 132 to generate a breadcrumbing navigation plot, enabling thevehicle being controlled to base navigational movements partially orwholly upon the movement of/following the CIPV.

Mission planning module 140 utilizes the breadcrumbing navigation plotfrom breadcrumbing navigation module 136 and other available informationto generate a commanded navigation plot. Longitudinal controller 150 andlateral controller 160 utilize the commanded navigation plot todetermine desired vehicle speed and desired vehicle trajectory.Electronic power steering/acceleration/braking module 170 utilizesoutputs from longitudinal controller 150 and lateral controller 160 toeffect control over navigation of the host vehicle 20. Controlarchitecture 100 is provided as one exemplary embodiment of a controlarchitecture that may be utilized to implement the disclosed process andsystem. Other embodiments are envisioned, and the disclosure is notintended to be limited to the examples provided herein.

FIG. 3 schematically illustrates an exemplary data communication systemwithin a vehicle being controlled. Data communication system 200 isillustrated including a camera device 110, a digital map database 120, asensor device 210, a navigational controller 220, and a vehiclecontroller 230, each respectively communicatively connected to vehicledata bus 240. Sensor device 210 may include one or more of a radardevice, LiDAR device, ultrasonic device, or other similar device usefulfor gathering data about the environment of a vehicle and behavior ofother vehicles upon a roadway. Vehicle data bus 240 includes acommunication network capable of transferring data quickly back andforth between various connected devices and modules. Data may becollected from each of camera device 110, digital map database 120, andsensor device 210 and transferred to navigational controller 220.Navigational controller 220 includes a computerized processor andprogrammed code operable to create a commanded navigation plot useful tonavigate the vehicle being controlled over a road surface around thevehicle.

FIG. 4 illustrates an exemplary vehicle being controlled by thedisclosed process and system, including devices and modules useful tocertifying a CIPV target as high-quality. Vehicle being controlled 300is illustrated upon road surface 310 including lane markings 320.Vehicle 300 is illustrated including navigation controller 220, vehiclecontroller 230, camera device 110, and sensor device 210. Camera device110 includes field of view 112 and is positioned to capture images ofroad surface 310 and other objects and obstacles near vehicle beingcontrolled 300, including a nearby vehicle that may be a CIPV. Sensordevice 210 may additionally provide data regarding objects near vehiclebeing controlled 300. Navigation controller 220 receives data fromcamera device 110 and other sources and generates a commanded navigationplot according to the disclosed process. Vehicle controller 230 utilizesthe commanded navigation plot to control navigation of vehicle beingcontrolled 300 upon road surface 310. Vehicle being controlled 300 isprovided as an exemplary vehicle utilizing the disclosed process andsystem. Other embodiments are envisioned, and the disclosure is notintended to be limited to the examples provided herein.

Various controllers may be utilized within the disclosed system tooperate the disclosed process. Controllers may include a computerizeddevice including a computerized processor including memory capable ofstoring programmed executable code. A controller may be operated upon asingle computerized device or may span several computerized devices.FIG. 5 schematically illustrates an exemplary computerized navigationcontroller. Navigation controller 220 includes computerized processordevice 410, communications module 430, data input/output module 420, andmemory storage device 440. It is noted that navigation controller 220may include other components and some of the components are not presentin some embodiments.

The processor device 410 may include memory, e.g., read only memory(ROM) and random-access memory (RAM), storing processor-executableinstructions and one or more processors that execute theprocessor-executable instructions. In embodiments where the processordevice 410 includes two or more processors, the processors may operatein a parallel or distributed manner. Processor device 410 may executethe operating system of the navigation controller 220. Processor device410 may include one or more modules executing programmed code orcomputerized processes or methods including executable steps.Illustrated modules may include a single physical device orfunctionality spanning multiple physical devices. In the illustrativeembodiment, the processor device 410 also includes data fusion module130, mission planning module 140, and lane data synthesis module 412,which are described in greater detail below.

The data input/output module 420 is a device that is operable to takedata gathered from sensors and devices throughout the vehicle andprocess the data into formats readily usable by processor device 410.Data input/output module 420 is further operable to process output fromprocessor device 410 and enable use of that output by other devices orcontrollers throughout the vehicle.

The communications module 430 may include a communications/dataconnection with a bus device configured to transfer data to differentcomponents of the system and may include one or more wirelesstransceivers for performing wireless communication.

The memory storage device 440 is a device that stores data generated orreceived by the navigation controller 220. The memory storage device 440may include, but is not limited to, a hard disc drive, an optical discdrive, and/or a flash memory drive.

The data fusion module 130 is described in relation to FIG. 2 and mayinclude programming operable to monitor data regarding a CIPV target,evaluate whether the CIPV target is exhibiting good CIPV behavior basedupon the data regarding the CIPV target and a swarm of vehicles, andselectively generate a breadcrumbing navigation plot.

Mission planning module 140 is described in relation to FIG. 2 and mayinclude programming operable to generate a commanded navigation plotbased upon the generated breadcrumbing navigation plot and othernavigational information such as lane data generated by lane datasynthesis module 412.

Lane data synthesis module 412 monitors information related to a currentlane of travel from various sources, including data from a cameradevice, data from a sensor device, data from a digital map device, andlane data synthesis module 412 projects or estimates the metes andbounds of a current lane of travel from available sources. Map error mayexist within the map database or in data related to a current location.Lane data synthesis module 412 may include algorithms useful to localizeinformation, fuse various sources of information, and reduce map error.These metes and bounds are made available to other modules as lane data.

Navigation controller 220 is provided as an exemplary computerizeddevice capable of executing programmed code to evaluate and selectivelyutilize data from a CIPV target to generate a breadcrumbing navigationplot. A number of different embodiments of navigation controller 220,devices attached thereto, and modules operable therein are envisioned,and the disclosure is not intended to be limited to examples providedherein.

FIG. 6 graphically illustrates exemplary positional data collectedregarding a swarm of vehicles including a CIPV target through a timespan. Graph 500 is provided. A vertical axis 510 is illustratedrepresenting a lateral distance from each data point to a centerline ofthe host vehicle. A horizontal axis 520 is illustrated representing alongitudinal distance from each data point to the host vehicle. Relatedto a CIPV target, a first data point 530 taken at an earliest point intime, a second data point 531 taken later than the earliest point intime, and a third data point 532 taken at a later point in time than thesecond data point 531 are illustrated. The time span of the data extendsfrom the earliest point in time that the first data point 530 is takento the time that the third data point 532 is taken. Related to a secondvehicle in the swarm, a first data point 550 taken at the earliest pointin time, a second data point 551 taken at a same time as the second datapoint 531, and a third data point 552 taken at a same time as the thirddata point 532 are illustrated. Related to a third vehicle in the swarm,a first data point 560 taken at the earliest point in time, a seconddata point 561 taken at the same time as the second data point 531, anda third data point 562 taken at the same time as the third data point532 are illustrated. Through analysis of the various data points,details about position and movement of the various vehicles may beanalyzed and evaluated.

FIG. 7 is a flowchart illustrating an exemplary process 600 to evaluatea CIPV target and determine whether the CIPV target is exhibiting goodCIPV behavior or bad CIPV behavior. The process 600 starts at step 602.At step 604, a CIPV target is identified. At step 606, a swarm ofvehicles close to the CIPV target and potentially including the CIPVtarget is identified. Close to the CIPV target may be defined accordingto a threshold distance, for example, being within ten to twenty metersof the CIPV target. At step 608, velocities of the CIPV target and theother vehicles of the swarm are determined. At step 610, a relativeposition of the CIPV target to each of the other vehicles of the swarmare determined. At step 612, a velocity of the CIPV target, thevelocities of the other vehicles of the swarm, and the relative positionof the CIPV target to the other vehicles of the swarm is analyzed. Aspart of this analysis, a determination is made whether the CIPV targetmay be considered part of the swarm. If the CIPV target may beconsidered part of the swarm, the process 600 advances to step 614. Ifthe CIPV target may not be considered part of the swarm, the process 600advances to step 618.

At step 614, when the CIPV target may be considered part of the swarm,the CIPV may be weighted as a high-quality candidate for breadcrumbingnavigation. At step 616, data regarding the CIPV target may be forwardedto breadcrumbing navigation module 136. The process 600 then advances tostep 622 where the process ends.

At step 618, when the CIPV target may not be considered part of theswarm, the CIPV may be weighted as a low-quality candidate forbreadcrumbing navigation. At step 620, the driver may be informed thatthe CIPV target is unreliable. In one optional embodiment, the drivermay be given the option to select a new CIPV target or to take manualcontrol of the host vehicle. The process 600 then advances to step 622where the process ends.

Process 600 is provided as an exemplary process to evaluate andselectively utilize data from a CIPV for breadcrumbing navigation. Anumber of similar processes are envisioned, and the disclosure is notintended to be limited to the examples provided herein.

A number of different processes may be used to identify a swarm ofvehicles. At step 612 a velocity of the CIPV target, the velocities ofthe other vehicles of the swarm, and the relative position of the CIPVtarget to the other vehicles of the swarm is analyzed. As part of thisanalysis, a determination is made whether the CIPV target may beconsidered part of the swarm. Similarly, a plurality of vehicles infront of the host vehicle may be analyzed, and some portion of theplurality of vehicles may have velocities and relative positions to eachother analyzed. In order to identify the portion of the plurality ofvehicles as a swarm, the navigation controller may determine that aspeed of a first vehicle and a speed of a second vehicle are within athreshold speed difference and that the relative position of the firstvehicle to the second vehicle is within a threshold distance and maysubsequently identify the first vehicle and the second vehicle as aswarm. Similar determinations may be made between the swarm includingthe first vehicle and the second vehicle in comparison to a thirdvehicle to determine whether third vehicle should be included in theswarm. Swarms with larger numbers of vehicles may be identified as morereliable or given more weight as compared to smaller swarms with two orthree vehicles.

Navigation plots described herein may be useful to command navigation ofa fully autonomous vehicle. Similarly, navigation plots described hereinmay be useful to command navigation of a semi-autonomous vehicle, forexample, to provide automated braking, lane-tending, or obstacleavoidance. Similarly, navigation plots described herein may be useful toprovide navigational aids such as projected graphics or generated soundsto aid a driver in efficiently controlling a vehicle. Examples areprovided herein of how generated navigation plots may be utilized. Otherembodiments are envisioned, and the disclosure is not intended to belimited to the examples provided herein.

A breadcrumbing navigation path, once generated by the present processand system, may be useful to create or influence a fused navigation pathuseful to guide or autonomously drive the vehicle. Such a breadcrumbingnavigation path or, in particular, a determination of bad behavior ofthe CIPV may be used to further modulate other factors such as distancekept away from the CIPV. For example, if a CIPV is scoring high marksfor good behavior a normal following distance may be implemented. Ifthat same CIPV begins to exhibit bad behavior, for example, as a resultof the driver becoming distracted, the bad behavior may be utilized toinstruct the host vehicle to increase a distance from the CIPV basedupon a decreased ability to trust that driver. In another exemplaryembodiment, a determination of bad behavior of the CIPV may be used tocommand automatic braking or slowing of the vehicle. In anotherembodiment, the driver of the host vehicle may additionally oralternatively be warned, for example, with visual graphics or an audiowarning, if the CIPV exhibits bad behavior.

The disclosed process and system describe an improvement of featureavailability for autonomous and semi-autonomous vehicles. In conditionswhere some navigation processes would lack sufficient data and guidanceto effectively navigate the vehicle, for example, in a construction zonewith missing, contradictory, or displaced lane markings, the disclosedprocess and system may be used to validate and successfully utilize apath of a CIPV in front of the host vehicle to navigate the vehiclethrough the exemplary construction zone.

While the best modes for carrying out the disclosure have been describedin detail, those familiar with the art to which this disclosure relateswill recognize various alternative designs and embodiments forpracticing the disclosure within the scope of the appended claims.

What is claimed is:
 1. A system for closest in path vehicle followingusing surrounding vehicles motion flow, comprising: a sensor device of ahost vehicle generating data related to a plurality of vehicles upon adrivable surface in front of the host vehicle; a navigation controllerincluding a computerized processor configured to: monitor the data fromthe sensor device; define a portion of the plurality of vehicles as aswarm of vehicles; identify one of the plurality of vehicles as aclosest in path vehicle to be followed; evaluate the data to determinewhether the closest in path vehicle to be followed is exhibiting goodbehavior in relation to the swarm of vehicles; and when the closest inpath vehicle to be followed is exhibiting the good behavior, generate abreadcrumbing navigation path based upon the data; a vehicle controllercontrolling the host vehicle based upon the breadcrumbing navigationpath; and wherein evaluating the data includes: comparing a heading ofthe closest in path vehicle to be followed to a heading of the swarm ofvehicles to determine a heading error of the closest in path vehicle tobe followed; comparing a curvature of the closest in path vehicle to befollowed to a curvature of the swarm of vehicles to determine acurvature error of the closest in path vehicle to be followed; anddetermining the closest in path vehicle to be exhibiting the goodbehavior based upon the heading error and the curvature error.
 2. Thesystem of claim 1, further comprising the computerized processor beingfurther configured to warn a driver of the host vehicle when the closestin path vehicle to be followed is not exhibiting the good behavior. 3.The system of claim 1, wherein the sensor device includes one of acamera device, a radar device, a LiDAR device, or an ultrasonic device.4. The system of claim 1, wherein the vehicle controller furthercontrols a distance from the closest in path vehicle to be followedbased upon the closest in path vehicle to be followed exhibiting thegood behavior.
 5. The system of claim 1, wherein the vehicle controllerfurther controls autonomous braking based upon the closest in pathvehicle to be followed exhibiting the good behavior.
 6. A system forclosest in path vehicle following using surrounding vehicles motionflow, comprising: a sensor device of a host vehicle generating datarelated to a plurality of vehicles upon a drivable surface in front ofthe host vehicle; a navigation controller including a computerizedprocessor configured to: monitor the data from the sensor device; definea portion of the plurality of vehicles as a swarm of vehicles; identifyone of the plurality of vehicles as a closest in path vehicle to befollowed; evaluate the data to determine whether the closest in pathvehicle to be followed is exhibiting good behavior in relation to theswarm of vehicles; and when the closest in path vehicle to be followedis exhibiting the good behavior, generate a breadcrumbing navigationpath based upon the data; a vehicle controller controlling the hostvehicle based upon the breadcrumbing navigation path; and furthercomprising the computerized processor being further configured to:determine a speed of the closest in path vehicle to be followed;determine an average speed of the swarm of vehicles; determine arelative position of the closest in path vehicle to be followed to theswarm of vehicles; and evaluate the data to determine whether theclosest in path vehicle to be followed is exhibiting the good behaviorin relation to the swarm of vehicles when a speed difference between thespeed of the closest in path vehicle to be followed and the averagespeed of the swarm of vehicles is less than a threshold speed differenceand when the relative position of the closest in path vehicle to befollowed to the swarm of vehicles is closer than a threshold distance.7. The system of claim 6, further comprising the computerized processorbeing further configured to warn a driver of the host vehicle when theclosest in path vehicle to be followed is not exhibiting the goodbehavior.
 8. The system of claim 6, wherein the sensor device includesone of a camera device, a radar device, a LiDAR device, or an ultrasonicdevice.
 9. The system of claim 6, wherein the vehicle controller furthercontrols a distance from the closest in path vehicle to be followedbased upon the closest in path vehicle to be followed exhibiting thegood behavior.
 10. The system of claim 6, wherein the vehicle controllerfurther controls autonomous braking based upon the closest in pathvehicle to be followed exhibiting the good behavior.
 11. A system forclosest in path vehicle following using surrounding vehicles motionflow, comprising: a sensor device of a host vehicle generating datarelated to a plurality of vehicles upon a drivable surface in front ofthe host vehicle; a navigation controller including a computerizedprocessor configured to: monitor the data from the sensor device; definea portion of the plurality of vehicles as a swarm of vehicles; identifyone of the plurality of vehicles as a closest in path vehicle to befollowed; evaluate the data to determine whether the closest in pathvehicle to be followed is exhibiting good behavior in relation to theswarm of vehicles; and when the closest in path vehicle to be followedis exhibiting the good behavior, generate a breadcrumbing navigationpath based upon the data; a vehicle controller controlling the hostvehicle based upon the breadcrumbing navigation path; and whereingenerating the breadcrumbing navigation path based upon the dataincludes weighting the closest in path vehicle as a high-qualitycandidate to be followed based upon the good behavior.
 12. The system ofclaim 11, further comprising the computerized processor being furtherconfigured to warn a driver of the host vehicle when the closest in pathvehicle to be followed is not exhibiting the good behavior.
 13. Thesystem of claim 11, wherein the sensor device includes one of a cameradevice, a radar device, a LiDAR device, or an ultrasonic device.
 14. Thesystem of claim 11, wherein the vehicle controller further controls adistance from the closest in path vehicle to be followed based upon theclosest in path vehicle to be followed exhibiting the good behavior. 15.The system of claim 11, wherein the vehicle controller further controlsautonomous braking based upon the closest in path vehicle to be followedexhibiting the good behavior.
 16. A system for closest in path vehiclefollowing using surrounding vehicles motion flow, comprising: a sensordevice of a host vehicle generating data related to a plurality ofvehicles upon a drivable surface in front of the host vehicle; anavigation controller including a computerized processor configured to:monitor the data from the sensor device; define a portion of theplurality of vehicles as a swarm of vehicles; identify one of theplurality of vehicles as a closest in path vehicle to be followed;evaluate the data to determine whether the closest in path vehicle to befollowed is exhibiting good behavior in relation to the swarm ofvehicles; and when the closest in path vehicle to be followed isexhibiting the good behavior, generate a breadcrumbing navigation pathbased upon the data; a vehicle controller controlling the host vehiclebased upon the breadcrumbing navigation path; and wherein defining theportion of the plurality of vehicles as the swarm of vehicles includes:determining a speed of a first vehicle of the plurality of vehicles;determining a speed of a second vehicle of the plurality of vehicles;determining a relative position of the first vehicle to the secondvehicle; and defining the first vehicle and the second vehicle as theswarm of vehicles when a speed difference between the speed of the firstvehicle and the speed of the second vehicle is less than a thresholdspeed difference and when the relative position of the first vehicle tothe second vehicle is closer than a threshold distance.
 17. The systemof claim 16, wherein defining the portion of the plurality of vehiclesas the swarm of vehicles further includes: determining a speed of athird vehicle of the plurality of vehicles; determining an average speedof the swarm of vehicles; determining a relative position of the thirdvehicle to the swarm of vehicles; and defining the swarm of vehicles toinclude the third vehicle when a speed difference between the speed ofthe third vehicle and the average speed of the swarm of vehicles is lessthan the threshold speed difference and when the relative position ofthe third vehicle to the swarm of vehicles is closer than the thresholddistance.
 18. The system of claim 16, further comprising thecomputerized processor being further configured to warn a driver of thehost vehicle when the closest in path vehicle to be followed is notexhibiting the good behavior.
 19. The system of claim 16, wherein thevehicle controller further controls a distance from the closest in pathvehicle to be followed based upon the closest in path vehicle to befollowed exhibiting the good behavior.
 20. The system of claim 16,wherein the vehicle controller further controls autonomous braking basedupon the closest in path vehicle to be followed exhibiting the goodbehavior.